package plg;

import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.FileReader;
import java.io.PrintWriter;

import analizadorSintactico.Parser;

public class Compila {

	/**
	 * @param args
	 */
	public static void main(String[] args) {
		String entrada;
		String salida;
		
		if ((args[0].compareTo("-h") == 0) || (args[0].compareTo("-H") == 0))
			System.out.println("Ayuda: java -jar compila.jar fichero_entrada fichero_salida");
		
		else{
			//entrada = "./ficheros/2o_cuatri_22mayo/" + args[0];
			//salida = "./ficheros/2o_cuatri_22mayo/" + args[1];
			
			entrada = args[0];
			salida = args[1];
			
			try {
				Parser parser = new Parser(new FileReader(entrada));
				parser.procesa();
				
				String codigo = parser.dameCodigo();
				crearSalida(codigo, salida);
				
			} catch (Exception e) {
				System.err.println("Error al procesar el fichero");
				System.err.println(e.getMessage());
			}
			
			
		}

	}

	private static void crearSalida(String codigo, String salida) throws FileNotFoundException {
		PrintWriter f = new PrintWriter(new FileOutputStream(new File(salida),false));
		
		f.print(codigo);
		
		f.flush();
		f.close();
	}

}